gtk4.git
8 years agomeson: simplify header checks
Tim-Philipp Müller [Thu, 23 Mar 2017 19:15:44 +0000 (19:15 +0000)]
meson: simplify header checks

Remove workaround for gcc bug (Meson does that now), and
construct the right config.h defines for the headers on
the fly instead of listing them in the build file, which
is more error prone.

8 years agoSet glib min/max versions
Matthias Clasen [Thu, 23 Mar 2017 15:09:51 +0000 (15:09 +0000)]
Set glib min/max versions

8 years agomeson: fix GETTEXT_PACKAGE
Tim-Philipp Müller [Wed, 22 Mar 2017 18:32:36 +0000 (18:32 +0000)]
meson: fix GETTEXT_PACKAGE

8 years agoDon't require glslc for vulkan
Matthias Clasen [Thu, 23 Mar 2017 12:29:08 +0000 (12:29 +0000)]
Don't require glslc for vulkan

The compiled shaders are checked into git.

8 years agomeson: move colord checks into cups printbackend
Tim-Philipp Müller [Wed, 22 Mar 2017 18:25:09 +0000 (18:25 +0000)]
meson: move colord checks into cups printbackend

Which is the only user of it. Also add option to enable/disable.

8 years agomeson: gtk: set GTK_PRINT_BACKENDS define properly
Tim-Philipp Müller [Wed, 22 Mar 2017 18:15:17 +0000 (18:15 +0000)]
meson: gtk: set GTK_PRINT_BACKENDS define properly

8 years agomeson: modules: add printbackends
Tim-Philipp Müller [Wed, 22 Mar 2017 16:48:56 +0000 (16:48 +0000)]
meson: modules: add printbackends

The cups checks might not work properly everywhere yet,
since they don't use cups-config and parse the output yet.

8 years agomeson: gtk: don't overwrite top-level cdata variable with local stuff
Tim-Philipp Müller [Wed, 22 Mar 2017 16:51:39 +0000 (16:51 +0000)]
meson: gtk: don't overwrite top-level cdata variable with local stuff

We need to set the global configuration data written into
config.h from the modules/printbackends meson file.

8 years agomeson: add po and po-properties
Tim-Philipp Müller [Wed, 22 Mar 2017 13:53:25 +0000 (13:53 +0000)]
meson: add po and po-properties

8 years agomeson: testsuites: tools: add meson build
Tim-Philipp Müller [Wed, 22 Mar 2017 13:39:14 +0000 (13:39 +0000)]
meson: testsuites: tools: add meson build

8 years agomeson: testsuite: reftests: add build defs, but needs more work
Tim-Philipp Müller [Wed, 22 Mar 2017 13:17:02 +0000 (13:17 +0000)]
meson: testsuite: reftests: add build defs, but needs more work

Not sure how these are supposed to work yet, we can specify
arguments for running the tests uninstalled as well with test(),
if that helps in any way.

8 years agomeson: testsuite: gdk: use array for test definitions
Tim-Philipp Müller [Wed, 22 Mar 2017 11:39:27 +0000 (11:39 +0000)]
meson: testsuite: gdk: use array for test definitions

8 years agomeson: testsuite: gtk: sync with Makefile and add some missing bits
Tim-Philipp Müller [Wed, 22 Mar 2017 11:23:52 +0000 (11:23 +0000)]
meson: testsuite: gtk: sync with Makefile and add some missing bits

Also use an array. A few tests fail, needs investigation.

8 years agomeson: make sure gsk/gdk generated headers exist for libgtk_dep users
Tim-Philipp Müller [Wed, 22 Mar 2017 00:45:39 +0000 (00:45 +0000)]
meson: make sure gsk/gdk generated headers exist for libgtk_dep users

Add back dependencies on libgdk_dep and libsk_dep which are declared
dependencies. We removed this before because these declarations had
link_with: lines that dragged in the static libgdk.a and libgsk.a libs
which are linked into libgtk-4.so anyway and thus shouldn't be used
when linking internal exes/tools against libgtk-4. Remove the static
libs from the declared dependencies and have libgtk link those in
explicitly, so that the declared deps now just provide all the built
dependencies and include dirs and such for declared libgtk_dep users
such as the internal exes/tools, which want all the generated gsk/gdk/gtk
headers to exist before attempting to compile anything against the
gtk+ headers.

8 years agomeson: generate .pc files
Tim-Philipp Müller [Wed, 22 Mar 2017 00:15:31 +0000 (00:15 +0000)]
meson: generate .pc files

8 years agomeson: gtk: update build file and sync to Makefile
Tim-Philipp Müller [Tue, 21 Mar 2017 13:34:25 +0000 (13:34 +0000)]
meson: gtk: update build file and sync to Makefile

8 years agomeson: gtk: use gnome.mkenums() and gnome.genmarshal()
Tim-Philipp Müller [Mon, 20 Mar 2017 19:24:11 +0000 (19:24 +0000)]
meson: gtk: use gnome.mkenums() and gnome.genmarshal()

8 years agomeson: gdk, gsk: fix install path of generated files
Tim-Philipp Müller [Mon, 20 Mar 2017 19:16:04 +0000 (19:16 +0000)]
meson: gdk, gsk: fix install path of generated files

8 years agomeson: gtk: remove internal static libs from declared gtk dependency
Tim-Philipp Müller [Mon, 20 Mar 2017 16:26:13 +0000 (16:26 +0000)]
meson: gtk: remove internal static libs from declared gtk dependency

gdk and gsk are no longer separate libs but part of gtk now, so any
Gtk+ user should just link to gtk, there's no need to additionally
link against all those static helper libs that go into the gtk lib.

This means we need to specifically add confinc to include_directories
in more places to make sure the right config.h (i.e. ours) gets
included and not a subproject's like graphene's config.h.

Not dragging in static libs also fixes the issue of all executables
having to be relinked for any and all changes. With this change
it's super-fast now and can be skipped for most changes that don't
touch the external ABI.

8 years agomeson: gtk: use array for installed tools definition
Tim-Philipp Müller [Mon, 20 Mar 2017 16:25:14 +0000 (16:25 +0000)]
meson: gtk: use array for installed tools definition

8 years agomeson: gtk: install headers
Tim-Philipp Müller [Mon, 20 Mar 2017 16:24:12 +0000 (16:24 +0000)]
meson: gtk: install headers

8 years agomeson: gdk: add quartz backend skeleton
Tim-Philipp Müller [Mon, 20 Mar 2017 12:18:15 +0000 (12:18 +0000)]
meson: gdk: add quartz backend skeleton

Won't even build yet, just put basic bits in place.

8 years agomeson: gdk: win32: add skeleton bits for win32 backend
Tim-Philipp Müller [Mon, 20 Mar 2017 12:03:45 +0000 (12:03 +0000)]
meson: gdk: win32: add skeleton bits for win32 backend

Won't even build, configure bits still missing.

8 years agomeson: gdk: wayland: generate private wayland headers first
Tim-Philipp Müller [Mon, 20 Mar 2017 11:44:42 +0000 (11:44 +0000)]
meson: gdk: wayland: generate private wayland headers first

gdkprivate-wayland.h includes generated wayland client protocol
headers and is included from gdkdisplaymanager.c, so we need to
generate those client protocol headers first also when building
main gdk itself.

8 years agomeson: gdk: add Mir backend bits
Tim-Philipp Müller [Mon, 20 Mar 2017 11:44:04 +0000 (11:44 +0000)]
meson: gdk: add Mir backend bits

Completely untested, might not even build.

8 years agomeson: gdk: build individual backends as static libs
Tim-Philipp Müller [Mon, 20 Mar 2017 00:37:09 +0000 (00:37 +0000)]
meson: gdk: build individual backends as static libs

This is how it's done in the autotools build. Also avoids problems
with multiple source files having the same name (gdkeventsource.c).

Also move broadway backend code into broadway subdir.

8 years agomeson: gdk: wayland: move wayland bits into wayland subdir
Tim-Philipp Müller [Mon, 20 Mar 2017 00:36:38 +0000 (00:36 +0000)]
meson: gdk: wayland: move wayland bits into wayland subdir

8 years agomeson: gdk: wayland: use array for protocol file generation
Tim-Philipp Müller [Sun, 19 Mar 2017 20:50:58 +0000 (20:50 +0000)]
meson: gdk: wayland: use array for protocol file generation

8 years agomeson: gdk: move x11 bits into x11 subdirectory
Tim-Philipp Müller [Sun, 19 Mar 2017 19:54:29 +0000 (19:54 +0000)]
meson: gdk: move x11 bits into x11 subdirectory

Also install headers.

8 years agomeson: gdk: update and sync with Makefiles
Tim-Philipp Müller [Sun, 19 Mar 2017 15:46:55 +0000 (15:46 +0000)]
meson: gdk: update and sync with Makefiles

Also create gdk.gresource.xml at build-time.

8 years agomeson: demos: disable add_install_script() calls that don't work right yet
Tim-Philipp Müller [Sun, 19 Mar 2017 14:22:33 +0000 (14:22 +0000)]
meson: demos: disable add_install_script() calls that don't work right yet

Errors out. Might really wants a script and not a binary.

8 years agomeson: gsk: install public headers
Tim-Philipp Müller [Sat, 18 Mar 2017 13:07:38 +0000 (13:07 +0000)]
meson: gsk: install public headers

8 years agomeson: gsk: use gnome.mkenums() to generate enum types
Tim-Philipp Müller [Sat, 18 Mar 2017 12:54:33 +0000 (12:54 +0000)]
meson: gsk: use gnome.mkenums() to generate enum types

8 years agomeson: gsk: generate gsk.resources.xml
Tim-Philipp Müller [Sat, 18 Mar 2017 12:14:12 +0000 (12:14 +0000)]
meson: gsk: generate gsk.resources.xml

8 years agomeson: add vulkan bits
Tim-Philipp Müller [Fri, 17 Mar 2017 23:43:36 +0000 (23:43 +0000)]
meson: add vulkan bits

8 years agomeson: examples: update
Tim-Philipp Müller [Sun, 12 Mar 2017 20:13:10 +0000 (20:13 +0000)]
meson: examples: update

Mostly style changes. Don't create resource source files
with spaces in them, that's tempting our luck.

8 years agomeson: tests: make tests find resources from the source dir
Tim-Philipp Müller [Sun, 12 Mar 2017 18:36:21 +0000 (18:36 +0000)]
meson: tests: make tests find resources from the source dir

Should probably also do this in the autotools build, since
the same problem exists there as well if we use srcdir != builddir.

8 years agomeson: tests: update and sync with Makefiles
Tim-Philipp Müller [Sun, 12 Mar 2017 18:13:31 +0000 (18:13 +0000)]
meson: tests: update and sync with Makefiles

8 years agomeson: demos: update and sync up with Makefiles
Tim-Philipp Müller [Sun, 12 Mar 2017 16:54:44 +0000 (16:54 +0000)]
meson: demos: update and sync up with Makefiles

8 years agomeson: use add_project_arguments() instead of add_global_arguments()
Tim-Philipp Müller [Sun, 12 Mar 2017 16:28:11 +0000 (16:28 +0000)]
meson: use add_project_arguments() instead of add_global_arguments()

So Gtk+ can be used as a subproject.

8 years agomeson: gtk-demo: update and sync up with Makefile.am
Tim-Philipp Müller [Sun, 12 Mar 2017 16:27:34 +0000 (16:27 +0000)]
meson: gtk-demo: update and sync up with Makefile.am

8 years agomeson: update list of sources for changes in git master
Tim-Philipp Müller [Sat, 11 Mar 2017 22:31:31 +0000 (22:31 +0000)]
meson: update list of sources for changes in git master

8 years agomeson: fix checks for maths and X11 funcs that need the right deps
Tim-Philipp Müller [Sat, 11 Mar 2017 22:30:35 +0000 (22:30 +0000)]
meson: fix checks for maths and X11 funcs that need the right deps

8 years agomeson: work around meson/gcc bug detecting linux/* headers
Tim-Philipp Müller [Sat, 11 Mar 2017 22:11:07 +0000 (22:11 +0000)]
meson: work around meson/gcc bug detecting linux/* headers

8 years agomeson: set _GNU_SOURCE project wide
Tim-Philipp Müller [Sat, 11 Mar 2017 22:06:07 +0000 (22:06 +0000)]
meson: set _GNU_SOURCE project wide

Easier, also means we don't have to define it for
checks. that will only succeed with it defind.

8 years agomeson: testsuite: gdk: need to dep on gtk
Tim-Philipp Müller [Sat, 11 Mar 2017 22:02:49 +0000 (22:02 +0000)]
meson: testsuite: gdk: need to dep on gtk

Almost all of these tests include gtk/gtk.h so we need
to dep on libgtk not just libgdk. Otherwise compilation
fails because graphene.h include can't be found.

8 years agomeson: gtk: generate gtk.gresource.xml
Tim-Philipp Müller [Sat, 11 Mar 2017 21:54:20 +0000 (21:54 +0000)]
meson: gtk: generate gtk.gresource.xml

8 years agomeson: gtk: add missing source file
Tim-Philipp Müller [Sun, 12 Feb 2017 00:42:37 +0000 (00:42 +0000)]
meson: gtk: add missing source file

8 years agomeson: make sure gdk/gdkenumtypes.h is generated for users of libgtk_dep
Tim-Philipp Müller [Sat, 11 Feb 2017 20:15:25 +0000 (20:15 +0000)]
meson: make sure gdk/gdkenumtypes.h is generated for users of libgtk_dep

Add libgdk_dep as dependency to the libgtk_dep declare_dependency(), so
that the generated gdk includes are generated before anything is built
that tries to include gtk headers (such as various tests that don't depend
on gdk directly).

8 years agoRename generated gtktypefuncs.c to gtktypefuncs.inc
Tim-Philipp Müller [Sun, 5 Feb 2017 13:41:38 +0000 (13:41 +0000)]
Rename generated gtktypefuncs.c to gtktypefuncs.inc

This is needed for the Meson port, a file name .c that's included
and shouldn't be compiled into an object is difficult to manage
otherwise. And it's not actually a valid .c file anyway.

8 years agomeson: add graphene subproject that can be used as fallback
Tim-Philipp Müller [Sun, 5 Feb 2017 11:41:14 +0000 (11:41 +0000)]
meson: add graphene subproject that can be used as fallback

8 years agomeson: update build files
Timm Bäder [Thu, 3 Nov 2016 08:47:00 +0000 (09:47 +0100)]
meson: update build files

8 years agomeson: Sort input files by name
Timm Bäder [Mon, 26 Sep 2016 10:51:17 +0000 (12:51 +0200)]
meson: Sort input files by name

8 years agomeson: Conditionally check for dependencies
Timm Bäder [Sat, 24 Sep 2016 15:35:10 +0000 (17:35 +0200)]
meson: Conditionally check for dependencies

8 years agomeson: Check for more libraries
Timm Bäder [Sat, 24 Sep 2016 10:46:10 +0000 (12:46 +0200)]
meson: Check for more libraries

8 years agomeson: build some more tests
Timm Bäder [Sat, 24 Sep 2016 09:31:00 +0000 (11:31 +0200)]
meson: build some more tests

8 years agomeson: build tests/visuals
Timm Bäder [Sat, 24 Sep 2016 09:07:34 +0000 (11:07 +0200)]
meson: build tests/visuals

8 years agomeson: Build gtk utils
Timm Bäder [Sat, 24 Sep 2016 08:43:22 +0000 (10:43 +0200)]
meson: Build gtk utils

8 years agomeson: Install libgtk and libgdk
Timm Bäder [Sat, 24 Sep 2016 08:18:26 +0000 (10:18 +0200)]
meson: Install libgtk and libgdk

8 years agogtk/meson: Read dirs from options
Timm Bäder [Sat, 24 Sep 2016 08:04:23 +0000 (10:04 +0200)]
gtk/meson: Read dirs from options

8 years agoBuild examples
Timm Bäder [Sat, 24 Sep 2016 07:38:10 +0000 (09:38 +0200)]
Build examples

8 years agomeson: Build all tests in tests/
Timm Bäder [Sat, 24 Sep 2016 06:45:08 +0000 (08:45 +0200)]
meson: Build all tests in tests/

8 years agomeson: Also check for sincos
Timm Bäder [Sat, 24 Sep 2016 06:44:53 +0000 (08:44 +0200)]
meson: Also check for sincos

8 years agomeson.build: Add more required versions
Timm Bäder [Sat, 24 Sep 2016 06:15:28 +0000 (08:15 +0200)]
meson.build: Add more required versions

...build tests/ and testsuite/, properly define gtk_version, etc.

8 years agomeson: figure out wayland-protocols pkgdatadir via pkg-config
Tim-Philipp Müller [Tue, 20 Sep 2016 15:46:30 +0000 (16:46 +0100)]
meson: figure out wayland-protocols pkgdatadir via pkg-config

Instead of hardcoding the location.

8 years agomeson: Use -Bsymbolic
Timm Bäder [Tue, 20 Sep 2016 19:25:39 +0000 (21:25 +0200)]
meson: Use -Bsymbolic

8 years agomeson: Require gtkmarshal_h before we build gtk
Timm Bäder [Tue, 20 Sep 2016 15:02:12 +0000 (17:02 +0200)]
meson: Require gtkmarshal_h before we build gtk

8 years agomeson: Disable broadway build
Timm Bäder [Tue, 20 Sep 2016 14:34:33 +0000 (16:34 +0200)]
meson: Disable broadway build

8 years agomeson: Generate demos.h for gtk3-demo
Timm Bäder [Tue, 20 Sep 2016 14:29:14 +0000 (16:29 +0200)]
meson: Generate demos.h for gtk3-demo

8 years agomeson: Build gtk3-demo
Timm Bäder [Tue, 20 Sep 2016 10:13:28 +0000 (12:13 +0200)]
meson: Build gtk3-demo

8 years agomeson: build gtk/ again
Timm Bäder [Tue, 20 Sep 2016 09:10:27 +0000 (11:10 +0200)]
meson: build gtk/ again

8 years agobuild: Generate wayland protocol files
Timm Bäder [Sat, 10 Sep 2016 18:40:02 +0000 (20:40 +0200)]
build: Generate wayland protocol files

8 years agowayland: Include generated sources from builddir, not srcdir
Timm Bäder [Sat, 10 Sep 2016 18:39:07 +0000 (20:39 +0200)]
wayland: Include generated sources from builddir, not srcdir

8 years agogentypefuncs.py: Use python3
Timm Bäder [Sat, 10 Sep 2016 16:10:11 +0000 (18:10 +0200)]
gentypefuncs.py: Use python3

8 years agomeson: replace gentypefuncs.d with python script
Tim-Philipp Müller [Sat, 10 Sep 2016 11:10:59 +0000 (12:10 +0100)]
meson: replace gentypefuncs.d with python script

8 years agogtk major version
Timm Bäder [Sat, 10 Sep 2016 04:58:16 +0000 (06:58 +0200)]
gtk major version

8 years agomeson: Use xrandr
Timm Bäder [Fri, 9 Sep 2016 20:02:21 +0000 (22:02 +0200)]
meson: Use xrandr

8 years agomeson: make gtk buildable
Timm Bäder [Tue, 23 Aug 2016 06:21:54 +0000 (08:21 +0200)]
meson: make gtk buildable

x11 only

8 years agomeson: Build gtk marshallers
Timm Bäder [Mon, 22 Aug 2016 19:26:38 +0000 (21:26 +0200)]
meson: Build gtk marshallers

And fix libgtk_dep/libgdk_dep to link_with the shared lib

8 years agomeson: Add unit test files
Timm Bäder [Sun, 21 Aug 2016 16:01:14 +0000 (18:01 +0200)]
meson: Add unit test files

8 years agogtk: Generate gresources file
Timm Bäder [Sun, 21 Aug 2016 16:00:19 +0000 (18:00 +0200)]
gtk: Generate gresources file

8 years agomeson: Add options for x/wayland/broadway backends
Timm Bäder [Sun, 21 Aug 2016 15:16:03 +0000 (17:16 +0200)]
meson: Add options for x/wayland/broadway backends

8 years agoMeson build v2
Timm Bäder [Sun, 21 Aug 2016 14:00:37 +0000 (16:00 +0200)]
Meson build v2

8 years agoAdd Meson build files
Emmanuele Bassi [Mon, 15 Aug 2016 08:03:57 +0000 (09:03 +0100)]
Add Meson build files

Original work by: Jussi Pakkanen <jpakkane@gmail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=769881

8 years agogsk: Include the private header
Emmanuele Bassi [Tue, 18 Apr 2017 14:14:35 +0000 (15:14 +0100)]
gsk: Include the private header

Both gskprivate.c and gskvulkanrenderer.c call `gsk_ensure_resources`
but fail in clude `gskprivate.h`, where the function is declared.

8 years agoRemove gdkkeysyms-compat.h
Emmanuele Bassi [Tue, 18 Apr 2017 17:31:27 +0000 (18:31 +0100)]
Remove gdkkeysyms-compat.h

The compatibility header was needed after GTK+ 3.0 renamed the key
symbols from `GDK_*` to `GDK_KEY_*` to avoid collisions.

8 years agoexamples/drawing: Don't call gtk_main_quit
Timm Bäder [Sat, 24 Sep 2016 07:36:32 +0000 (09:36 +0200)]
examples/drawing: Don't call gtk_main_quit

This is a GtkApplication so it will do the right thing when closing the
window.

8 years agofallback-c89: Include config.h
Timm Bäder [Sun, 21 Aug 2016 13:43:29 +0000 (15:43 +0200)]
fallback-c89: Include config.h

It holds all the HAVE_<func> definitions.

8 years agogdk: Remove GdkX11DisplayManager from the build
Emmanuele Bassi [Fri, 28 Apr 2017 14:07:04 +0000 (15:07 +0100)]
gdk: Remove GdkX11DisplayManager from the build

We don't instantiate it, and we don't use it any more.

8 years agoRemove the gdk backend API too
Matthias Clasen [Tue, 2 May 2017 20:16:05 +0000 (16:16 -0400)]
Remove the gdk backend API too

The GTK+ level API for this is already gone.

8 years agoScale: Improve documentation of set_has_origin()
Daniel Boles [Tue, 2 May 2017 11:22:20 +0000 (12:22 +0100)]
Scale: Improve documentation of set_has_origin()

Properly format the property name, and avoid saying scale so many times.

8 years agoScale: Explain how to round value when !draw-value
Daniel Boles [Tue, 2 May 2017 11:18:26 +0000 (12:18 +0100)]
Scale: Explain how to round value when !draw-value

Scale:digits is (now, again) ineffective if Scale:draw-value is FALSE.
To get rounding in that case, the base Range:round-digits must be used.

8 years agoRecover assets rendering script
Emmanuele Bassi [Tue, 2 May 2017 11:36:15 +0000 (12:36 +0100)]
Recover assets rendering script

It was unintentionally removed by commit f6cbd076.

8 years agowidget-factory: Fix listbox row alignment
Timm Bäder [Sun, 30 Apr 2017 19:57:15 +0000 (21:57 +0200)]
widget-factory: Fix listbox row alignment

8 years agoChain up in size-allocate implementations
Timm Bäder [Sun, 30 Apr 2017 19:53:05 +0000 (21:53 +0200)]
Chain up in size-allocate implementations

Otherwise we're not setting an allocation at all.

8 years agoRemove GtkWindow::hide-titlebar-when-maximized
Matthias Clasen [Mon, 1 May 2017 16:57:05 +0000 (12:57 -0400)]
Remove GtkWindow::hide-titlebar-when-maximized

This was only every implemented under X11, and with CSD,
this is clearly in the application realm. We should not
pretend that we can support it on the toolkit level.

https://bugzilla.gnome.org/show_bug.cgi?id=775061

8 years agowidget: remove double assignment
Timm Bäder [Sun, 30 Apr 2017 18:21:39 +0000 (20:21 +0200)]
widget: remove double assignment

We never read the value we assign here.

8 years agoplacesview: Remove duplicate GtkMountOperation assignment
Timm Bäder [Sun, 30 Apr 2017 18:20:58 +0000 (20:20 +0200)]
placesview: Remove duplicate GtkMountOperation assignment

we assign a new mount operation a few lines later again.

8 years agolevelbar: Don't allocate 0 blocks
Timm Bäder [Sun, 30 Apr 2017 18:19:56 +0000 (20:19 +0200)]
levelbar: Don't allocate 0 blocks

Could result in a division by zero later on and doesn't make a lot of
sense anyway.

8 years agogtksettings: Remove unnecessary deprecation guards
Timm Bäder [Sun, 30 Apr 2017 17:48:39 +0000 (19:48 +0200)]
gtksettings: Remove unnecessary deprecation guards

Nothing between them is deprecated.